package h0829;

import java.util.Comparator;
import java.util.PriorityQueue;

/**
  * @description 数组中第k个最大元素
  * @author 不知名帅哥
  * @date 2024/8/29 23:35
  * @version 1.0
*/
public class TheKthNumInArray {
    public static void main(String[] args) {
        int[] nums={6,5,4,3,2,1};
        int k=2;
        System.out.println(getMin(nums, k));
    }

    private static int getMin(int[] nums, int k) {
        PriorityQueue<Integer> queue = new PriorityQueue<>();
        for (int num : nums) {
            queue.add(num);
            //弹出去n-k个元素，剩下堆顶的就是第k个最大的。
            if (queue.size()>k){
                queue.poll();
            }
        }
        return queue.poll();
    }
}
